Wintersemester 2025/26
Veranstaltungen im Wintersemester 25/26
Vorlesung mit Übung Embedded Systems
| Bachelor Informatik Bachelor Software Engineering Bachelor Computer Engineering Bachelor Systems Engineering Bachelor Medizintechnik Bachelor Electrical and Electronic Engineering Bachelor Computer Science and Communications Engineering |
|
| Prof. Dr. Gregor Schiele (Vorlesung) Christopher Ringhofer (Übung) |
|
| Deutsch | |
|
Wintersemester |
|
| Do., 10:00 - 12:00 Uhr (Vorlesung) Di., 12:00 - 14:00 Uhr (Übung) |
|
| LC 137 (Vorlesung & Übung) |
Vorlesung mit Übung Software Craftmanship
| Master Informatik Master Cyber Physical Systems Master Software and Network Engineering |
|
| Prof. Dr. Gregor Schiele (Vorlesung) Lukas Einhaus (Übung) |
|
| Deutsch | |
|
Wintersemester |
|
| Mo., 14:00 - 16:00 Uhr (Vorlesung) Mo., 16:00 - 18:00 Uhr (Übung) |
|
| BC 303 (Vorlesung & Übung) |
Vorlesung mit Übung Entwurf von digitalen Hardware-Beschleunigern
| Master Informatik Master Cyber Physical Systems |
|
| Dr.-Ing. Andreas Erbslöh (Vorlesung) David Peter Federl (Übung) |
|
| Deutsch | |
|
Wintersemester |
|
| Di., 12:00-14:00 Uhr (Vorlesung) Mi., 14:00-16:00 Uhr (Übung) |
|
| BC 103 (Vorlesung & Übung) |
Vorlesung mit Übung Fortgeschrittene Programmiertechniken
| Bachelor Informatik Bachelor Computer Engineering Master Menschenzentrierte Informatik und Psychologie |
|
| Fatih Özgan (Vorlesung) Julian Herold, Jonathan Dreisvogt & Cora Jostock (Übung) |
|
| Deutsch | |
|
Sommer- & Wintersemester |
|
| Di., 12:00 - 14:00 Uhr (Vorlesung) Mo., 11:00 - 12:30 Uhr & 12:30 - 14:00 Uhr (Übung) Mi., 13:00 - 14:30 Uhr & 14:30 - 16:00 Uhr (Übung) Do., 12:00 - 13:30 Uhr & 13:30 - 15:00 Uhr (Übung) |
|
| LB 131 (Vorlesung) LF 257 (Übung) |
Praxisprojekt EEG-basierter Gaming-Controller
| Bachelor Informatik Bachelor Elektro- & Informationstechnik Bachelor Medizintechnik Master Informatik Master Elektro- & Informationstechnik Master Cyber Physical Systems |
|
| Dr.-Ing. Andreas Erbslöh Lukas Einhaus |
|
| Deutsch | |
|
Wintersemester |
|
| Di., 11:00 Uhr | |
| BC 013 |
Praktikum Cyber-Physical-Systems-Laborpraktikum
| Master Cyber Physical Systems | |
| Prof. Dr. Gregor Schiele / Chao Qian Prof. Dr. Torben Weis / Peter Zdankin |
|
| Deutsch | |
|
Sommer- & Wintersemester |
|
| Mo., 12:00 Uhr | |
| BC 013 |
Vorlesung mit ÜbungEmbedded Systems
| Studiengang | Bachelor Informatik Bachelor Software Engineering Bachelor Computer Engineering Bachelor Systems Engineering Bachelor Medizintechnik Bachelor Electrical and Electronic Engineering Bachelor Computer Science and Communications Engineering |
| Dozenten: | Prof. Dr. Gregor Schiele (Vorlesung) Christopher Ringhofer (Übung) |
| Sprache: | Deutsch |
| Turnus: | Wintersemester |
| Zeit: | Do., 10:00 - 12:00 Uhr (Vorlesung) Di., 12:00 - 14:00 Uhr (Übung) |
| Ort: | LC 137 (Vorlesung & Übung) |
| Beginn: | 16.10.2025 (Vorlesung) 21.10.2025 (Übung) |
Ziel dieser Veranstaltung ist das Verständnis der Besonderheiten Eingebetteter Systeme sowie die Fähigkeit zur Programmierung von eingebetteten Systemen unter Nutzung der Programmiersprache C.
Eingebettete Systeme sind sehr kleine Computersystem die ein spezifisches Einsatzgebiet haben. Sie können Teil von komplexeren Systemen (Autos, Haushaltsgeräten) oder autonom (Mobiltelefone, Messinstrumente) sein.
In der Vorlesung werden die Besonderheiten von Eingebetteten Systemen besprochen. Ein besonderer Schwerpunkt wird auf die Probleme gelegt, die bei der Entwickelung von Software für Eingebettete Systeme auf Mikrocontrollern (MCUs) auftreten, insbesondere für sogenannte Bare-Metal-Systeme, d.h. Software die ohne Betriebssystemunterstützung ausgeführt wird.
In der Vorlesung werden folgende Themen besprochen:
- Die grundlegende Architektur von Eingebetteten Systemen (HW/SW)
- Basic I/O mit GPIO-Ports
- Arbeiten mit analogen Signalen
- Implementierung von digitalen Filtern
- Interrupts
- Timer
- digitale Kommunikationsprotokolle
- Energiesparansätze
- Code-Optimierung
Vorlesung mit ÜbungSoftware Craftmanship
| Studiengänge |
Master Informatik |
| Dozenten: | Prof. Dr. Gregor Schiele (Vorlesung) Lukas Einhaus (Übung) |
| Sprache: | Deutsch |
| Turnus: | Wintersemester |
| Zeit: | Mo., 14:00 - 16:00 Uhr (Vorlesung) Mo., 16:00 - 18:00 Uhr (Übung) |
| Ort: | BC 303 (Vorlesung & Übung) |
| Beginn: | 13.10.2025 |
In diesem Kurs werden wir untersuchen, was es bedeutet, ein professioneller Softwareentwickler zu sein, insbesondere Prozesse, Tools und Techniken für die termingerechte Entwicklung von qualitativ hochwertigem Code. Themen beinhalten: Ethos der Softwareentwicklung, Testing, Dependency Management, Versioning und Branching mit Git, agile Entwicklung, Clean Code, Clean Architecture, XP, Refactoring, Arbeiten in einem Team.
Wir setzen voraus, dass Sie über Vorkenntnisse in der Programmierung von Software in einer prozeduralen oder objektorientierten Sprache verfügen. Wir werden Java für alle Beispiele und Übungen verwenden. Darüber hinaus sollten Sie wissen, wie Sie eine Kommandozeilenschnittstelle verwenden, z.B. eine Linux-Shell.
Vorlesung mit ÜbungEntwurf von digitalen Hardware-Beschleunigern
| Studiengänge | Master Informatik Master Cyber Physical Systems |
| Dozenten: | Dr.-Ing. Andreas Erbslöh (Vorlesung) David Peter Federl (Übung) |
| Sprache: | Deutsch |
| Turnus: | Wintersemester |
| Zeit: | Di., 12:00-14:00 Uhr (Vorlesung) Mi., 14:00-16:00 Uhr (Übung) |
| Ort: | BC 103 (Vorlesung & Übung) |
| Beginn: | 14.10.2025 (Vorlesung) 22.10.2025 (Übung) |
FPGAs gehören zur Familie von eingebetteten Systemen. Im Vergleich zu Mikrocontrollern erlauben diese eine massiv parallele Datenverarbeitung durch das Verschalten von Look-Up-Tabellen (LUT), komplexeren Funktionen (Multiplikatoren) und SRAM-Speicher. In diesen LUTs lassen sich komplexere Logik-Funktionen durch die Approximation der Wahrheitstabelle abbilden.
In der Vorlesung werden die Grundlagen zum Verständnis der Funktionsweise und des Aufbaus von FPGAs erklärt. Darauf aufbauend werden die Vorteile im Vergleich zu anderen eingebetteten Systemen inkl. den Anwendungsfeldern benannt.
Nach der Einführung in die Logik- und Transistor-Grundlagen wird die Hardware-Beschreibungssprache Verilog behandelt, um die Synthese von anfänglichen einfachen Logikschaltungen, Speicher-Instanziierung und Ablaufsteuerungen mit Zustandsautomaten zu realisieren. Diese können zur Realisierung von Kommunikationsschnittstellen (I2C, SPI, UART) und arithmetischen Funktionen (Addition, Multiplikation) verwendet werden. Der Fokus der Vorlesung ist auf dem Entwurf einer sensor-basierten Datenstromverarbeitung, bei dem das Gesamtsystem Methoden zur digitalen Datenvorverarbeitung, wie die zur Signalfilterung mit FIR- und IIR-Filtern, und einfache KI-Beschleuniger mit Tiefen Neuronalen Netzen (Dense-Layern, ReLU Aktivierungsfunktion) beinhaltet. Am Ende der Vorlesungsreihe werden Optimierungen für die ASIC- Integration von möglichen Datensignalprozessoren gezeigt und mit Gastvorträgen aus Forschung und/oder Industrie erweitert.
Im praktischen Teil der Vorlesung werden jeweilige Programmieraufgaben angeboten, die die Erstellung solcher Logikschaltungen in Modulen und Testumgebungen ermöglichen. Hierzu wird das Online-Tool eda playground verwendet.
Lernziele:
- Verständnis über die Funktionsweise und Aufbau eines Field Programmable Gate Array (FPGA)
- Umgang mit der Hardware-Beschreibungssprache Verilog
- Aufbau von Modulen, Instanzen und Testumgebungen
- Synthese von Logikschaltungen, Zustandsautomaten,
- Einbettung in Kommunikationsschnittstellen (SPI, UART, I2C) und Beschleunigern für arithmetische Operationen, Filterschaltungen und einfachen KI-Modellen mit Dense-Layern
Literatur:
- Introduction to Logic Circuits & Logic Design with Verilog, Brock J. LaMeres, Third Edition (2024)
- Verilog by Example: A Concise Introduction for FPGA Design, Blaine Readler, 2013
- Digital Design and Computer Architectures,
David Harris and Sarah Harris, 2012
Empfohlene Vorleistung / Voraussetzung:
- Logik
- Grundlagen der technischen Informatik
Vorlesung mit ÜbungFortgeschrittene Programmiertechniken
| Studiengänge | Bachelor Informatik Bachelor Computer Engineering Master Menschenzentrierte Informatik und Psychologie |
| Dozenten: | Fatih Özgan (Vorlesung) Julian Herold, Jonathan Dreisvogt & Cora Jostock (Übung) |
| Sprache: | Deutsch |
| Turnus: | Sommer- & Wintersemester |
| Zeit: | Di., 12:00-14:00 Uhr (Vorlesung) Mo., 11:00 - 12:30 Uhr & 12:30 - 14:00 Uhr (Übung) Mi., 13:00 - 14:30 Uhr & 14:30 - 16:00 Uhr (Übung) Do., 12:00 - 13:30 Uhr & 13:30 - 15:00 Uhr (Übung) |
| Ort: | LB 131 (Vorlesung) LF 257 (Übung) |
| Beginn: | 14.10.2025 (Vorlesung) 20.10.2025 (Übung) |
Ziel dieser Veranstaltung ist das Erlernen der objektorientierten Programmierung sowie der grundlegenden Komponenten einer Applikation. Als Programmiersprache kommt Java zum Einsatz, eine statisch typisierte, objektorientierte Sprache. Die Inhalte der Vorlesung wurden auf die aktuelle Version Java 25 angepasst.
In der Vorlesung werden folgende Themen besprochen:
- Programmierung in Java
- Objektorientierte Programmierung
- Datenbanken
- Netzwerkprogrammierung
- Nebenläufigkeit
- Graphische Benutzeroberflächen
Übungsbetrieb:
Parallel zur Vorlesung entwickeln die Studierenden unter Betreuung von Hilfskräften in Einzelarbeit eine Applikation. Dieses Projekt ersetzt den bisherigen Übungsbetrieb und ist zugleich Zulassungsvoraussetzung zur schriftlichen Prüfung. Das genaue Format des Projekts sowie die erforderlichen Abgaben zur Erfüllung der Zulassungsvoraussetzung werden in der ersten Vorlesung und in Moodle bekanntgegeben.
Prüfungsform:
Die Prüfung erfolgt weiterhin schriftlich, nun jedoch mit der zusätzlichen Zulassungsvoraussetzung. Die Prüfungsdauer beträgt 60 Minuten.
PraxisprojektEEG-basierter Gaming-Controller
| Studiengänge |
Bachelor Informatik |
| Dozenten: |
Dr.-Ing. Andreas Erbslöh |
| Sprache: | Deutsch |
| Turnus: | Wintersemester |
| Zeit: | Di., 11:00 Uhr |
| Ort: | BC 013 |
| Kickoff: | 14.10.2025 |
In vorherigen Projekten wurde eine Verarbeitungspipeline für EEG-Daten (Elektroenzephalografie) entwickelt, welche die MentaLab Explore+ EEG-Kappe nutzt und es einem Anwender ermöglicht, mittels Gedanken einen Computerspiel-Avatar zu steuern.
Es wurden EEG-Daten erhoben, gelabelt und mittels künstlicher Intelligenz zu Gamecontroller-Kommandos interpretiert. Ebenfalls wurde ein Pacman-basierendes Videospiel mit einer Client-Server-Architektur in Python implementiert. Parallel wurde an einer Verbesserung der EEG-Aufnahmehardware gearbeitet. Diese Pipeline soll nun evaluiert und optimiert werden. Ziele dieses Semesters sind u.a. folgende Punkte:
- Software:
- Ende-zu-Ende-Integration von EEG-Datenerhebung bis zum Game-Server
- Evaluierung der Ende-zu-Ende Signalverarbeitung und Erstellen eines Datensatzes
- Evaluation und Optimierung des KI-Modells zur Bewegungs-Vorhersage bzgl. Ressourcenverbrauch und Latenz
- Optimierungen bzgl. dieser Punkte, wie z.B. Verbesserungen der Datenerhebung und -verarbeitung mittels KI
- Hardware:
- Implementierung von Vorverarbeitungsmethoden für den RPi Pico / FPGA
- Auslesen der Rohdaten des MentaLab Explore+ mit unserer eigenen ElasticAI.hardware und C-Runtime
- Verwendung von neuartigen "Flower"-Elektroden der TU Ilmenau mit aktiver Schirmung
Organisation:
Die Teilnahme am Kickoff-Meeting ist für die Teilnahme an diesem Projekt verpflichtend.
PraktikumCyber-Physical-Systems-Laborpraktikum
| Dozent: |
Prof. Dr. Gregor Schiele / Chao Qian |
| Sprache: | Deutsch |
| Turnus: | Sommer- & Wintersemester |
| Zeit: | 12:00 Uhr |
| Ort: | BC 013 |
| Kickoff: | 13.10.2025 |
Dieses Laborpraktikum wird exklusiv für Studierende des Masterstudiengangs „Cyber Physical Systems“ in Kooperation mit der Gruppe von Prof. Weis angeboten. Die Kickoff-Veranstaltung wird gleich im Anschluss an die CPS-Einführungsveranstaltung (Mo., 13.10.2025 von 10:00 - 12:00 Uhr) stattfinden.